/*
 * $Id: DeepSpace.java 103 2009-05-05 11:36:35Z meyer@alphatec.de $
 * 
 *
 * Copyright 2009 DeltaDesk
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *   http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
 * implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package deltadesk.deepspace;

import java.awt.event.KeyEvent;
import java.net.MalformedURLException;

import deltadesk.gui.deltagui.layout.GridLayout;
import deltadesk.gui.deltagui.widget.AnalogClock;
import deltadesk.gui.deltagui.widget.Text;
import deltadesk.gui.deltagui.widget.box.Box;

/**
 * DeepSpace.
 * 
 * @author Andreas Meyer
 * @version $Revision: 103 $
 */
public class DeepSpace extends DeepSpacePanel {
	
	private static final String TXT = 
		"Lorem ipsum dolor sit amet, consectetuer sadipscing elitr, sed diam nonumy eirmod tempor " +
		"invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et " +
		"accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata " +
		"sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing " +
		"elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, " +
		"sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita " +
		"kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor " +
		"sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore " +
		"et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo " +
		"dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.";


	private final GridLayout layout;


	public DeepSpace() throws MalformedURLException {
//		super(1, 1);
		
		layout = (GridLayout)getContentPanel().getLayout();

		getContentPanel().add(new Box(getClass().getResource("image1.jpg")));
		getContentPanel().add(new Box(getClass().getResource("image2.jpg")));
		getContentPanel().add(new Text(TXT));
		getContentPanel().add(new AnalogClock());
	}
	
	protected void postKeyEvent(final KeyEvent ke) {
		
		if(ke.getKeyCode() == KeyEvent.VK_1) {

			layout.incRows();
			invalidate();
			setUnrendered();

		}
		
		if(ke.getKeyCode() == KeyEvent.VK_2) {

			layout.incColumns();
			invalidate();
			setUnrendered();
		}

		if(ke.getKeyCode() == KeyEvent.VK_3) {

			layout.decRows();
			invalidate();
			setUnrendered();
		}
		
		if(ke.getKeyCode() == KeyEvent.VK_4) {

			layout.decColumns();
			invalidate();
			setUnrendered();
		}

		if(ke.getKeyCode() == KeyEvent.VK_0) {

			layout.setAutoCalcGrid();
			invalidate();
			setUnrendered();
		}

		if(ke.getKeyCode() == KeyEvent.VK_N) {

			getContentPanel().add(new Box("Insert new text box to test test boxes and word wrap"));
		}

	}


}
